#ifndef _STUDENT_
#define _STUDENT_
#include <stdio.h>
#include <string.h>
extern int student_count;
/* ENG
adress book 通讯录（结合语境也可以是学生管理系统）
Modify 修改 v. modify option:修改选项（modify still is v but 看起来很直观）modified adj
index 索引（数组下角标）
handle 操作handle_mod.修改操作
Multiple多个；多种的；倍数的
enter ,input都是输入
Current info 当前信息
*/
/*
一、增删改查四个主要功能
1. 将用户输入查找方式部分封装为handle开头的操作函数
2.在操作的函数里调用功能函数并传参
3.这样做不会把索引露给终端，也不必增加一个成员，
4.让main函数更简洁了
流程
打印菜单---->调用handle函数----->通过输入给find函数确认操作目标

二、find返回值:

if（搜到目标大于1，（find会return-2）不操作，将信息全部打印）
if(没搜到find ()return -1)返回没搜到
else(只搜到一个返回索引，直接将索引传参给操作函数)
三、实现操作
*/
typedef struct student 
{
    int id;
    char name[10];
    int age;
    char tel[12];
} stu;

void clear();

void ADD_STU(stu* p, int len);  //初始化age都是0，在age为0处添加

void DELET_STU(stu* p1, int del_index, int len1);  //被删除位置后方所有元素平移一个单位

void MOD_STU(stu* pm);//find得到索引，传入地址进行操作

int FIND_STU(stu* p, int way, int len);//-2，-1，（0-10）索引

void PRINT_ONE(stu* p);
void PRINT_ALL(stu* p, int len);

void handleAdd(stu* gec, int len);

void handleModify(stu* gec, int len);

void handleDelete(stu* gec, int len);

void handleFind(stu* gec, int len);

void handlePrintAll(stu* gec, int len);

void menu();




#endif